FMK-LOG 1

1. Параллельный интерфейс персонального компьютера IBM PC

 

Под портом обычно понимается интерфейс к внешним устройствам. Следует различать порт – логическое устройство операционной системы (например, специальные файлы) и порт – физическое устройство.

Параллельный, последовательный и игровой порты – это наиболее распространенные порты ввода-вывода. В некоторых портативных компьютерах может не быть игрового порта, но параллельный и последовательный входят в стандартную комплектацию для всех типов ПК.

Изначально каждый из этих портов разрабатывался для определенного применения. Параллельные предназначались для соединения компьютеров с принтерами, последовательные – для подключения принтеров, модемов и мыши. Однако они могут использоваться и для других приложений, связанных с сопряжением компьютера с внешними устройствами. Периферийные устройства, созданные для этих портов, легко подключаются к IBM РС-совместимому компьютеру. Принципиальные схемы отличаются мобильностью и могут применяться для решения проблем сопряжения с любым оборудованием, которое оснащено указанными портами.

Порт Centronic, или параллельный, – это промышленный стандарт для подсоединения принтеров к компьютеру. Компьютер имеет, по крайней мере, один такой порт, встроенный в материнскую плату (плату, на которой располагаются все основные элементы) или представляющий собой отдельную интерфейсную карту ввода-вывода. Вывод порта имеет 25-контактную розетку D-типа (рис. 1). При подсоединении устройств к этому порту необходимо учитывать максимальную длину кабеля между ними – не более 5 метров (имеется в виду стандартный кабель для присоединения принтера).

 

 

Рис. 1. Цоколёвка параллельного порта LPT1 (тёмными обозначены контакты, с помощью которых может осуществляться передача данных от компьютера).

 

Отдельные контакты параллельного порта предназначены для различных целей: одни – для ввода, другие – для вывода данных. Назначение каждого вывода представлено в таблице 1.

 

Таблица 1. Назначение контактов разъёма параллельного порта.

Номер

контакта на компьютере

Направление (относительно ПК)

Наименование

Назначение

 

1

2

3

4

5

6

7

8

9

 

10

 

11

12

13

14

 

 

15

16

17

18..25

 

Выход

Выход

Выход

Выход

Выход

Выход

Выход

Выход

Выход

 

Вход

 

Вход

Вход

Вход

Выход

 

 

Вход

Выход

Выход

 

DB0

DB1

DB2

DB3

DB4

DB5

DB6

DB7

 

 

BUSY

PE

SLCT

 

*

GND

 

Строб данных

Бит данных 0

Бит данных 1

Бит данных 2

Бит данных 3
Бит данных 4
Бит данных 5

Бит данных 6

Бит данных 7

 

Подтверждение приёма данных, готовность принтера

Подтверждение занятости принтера

Нет бумаги

Принтер подключен к линии

Автоматический перевод строки после возврата каретки

 

Ошибка в принтере

Установка параметров по умолчанию

Выбор принтера

Витая пара, соединённая с землёй

 

Для осуществления доступа к данным порта необходимо считывать его значения из памяти по определённому адресу, что можно осуществить из любого языка программирования, взаимодействующего с операционной системой (например, Паскаль, Си).

Базовые адреса порта LPT1, по которым можно к нему обратиться – 956 (3BCh*) или 888 (378h).

Базовый адрес для LPT1 зависит от конфигурации оборудования компьютера. Существует два способа получения базового адреса: проверка конфигурации оборудования вашего компьютера или нахождение адреса непосредственно из пользовательских программ с помощью средств, предлагаемых базовой системой ввода-вывода (BIOS) компьютера. При включении или перезагрузке компьютера BIOS проверяет наличие параллельных портов. Если они обнаруживаются, их базовые адреса (двухбайтовые слова**) помещаются в определенные ячейки памяти ОЗУ (оперативного запоминающего устройства). Для LPT1 это ячейки 0000h:0408h*** и 0000h:0409h. Первая содержит младший, вторая – старший байт адреса. Базовый адрес LPT1 можно получить, считав содержимое этих ячеек. Кроме того, используется еще одна ячейка памяти: 0000:4011h. Она содержит сведения об общем количестве параллельных портов, установленных на компьютере. Эта информация хранится в битах 6 и 7:

бит 7=0, бит 6=0                      параллельные порты не установлены,

бит 7=0, бит 6=1                      установлен один параллельный порт,

бит 7=1, бит 6=0                      установлено два параллельных порта,

бит 7=1, бит 6=1                      установлено три параллельных порта.

Таким образом, считав из вышеуказанной ячейки памяти адрес порта, можно осуществлять дальнейшее взаимодействие с ним.

 



* «h» – обозначает, что число записано в шестнадцатеричной системе.

** слово – единица информации; размер зависит от разрядности процессора (для 16 разрядных – 2 байта).

*** XXXXh:XXXXh – обозначение адреса «сегмент-смещение» (у 16-рязрядных компьютеров).

.
Сайт создан в системе